From c9577eb490d71da71eaabdadb621ca33d1941f4b Mon Sep 17 00:00:00 2001 From: "emellor@ewan" Date: Tue, 4 Oct 2005 00:21:49 +0100 Subject: [PATCH] Added method XendDomain.privilegedDomain and use that inside DevController to avoid hard-coding the domain ID 0. Signed-off-by: Ewan Mellor --- tools/python/xen/xend/XendDomain.py | 5 +++++ tools/python/xen/xend/server/DevController.py | 13 +++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/tools/python/xen/xend/XendDomain.py b/tools/python/xen/xend/XendDomain.py index f21d08edbb..81302ad031 100644 --- a/tools/python/xen/xend/XendDomain.py +++ b/tools/python/xen/xend/XendDomain.py @@ -284,6 +284,11 @@ class XendDomain: pass return dominfo + + def privilegedDomain(self): + return self.domains[PRIV_DOMAIN] + + def domain_unpause(self, id): """Unpause domain execution. diff --git a/tools/python/xen/xend/server/DevController.py b/tools/python/xen/xend/server/DevController.py index 0ede664ba0..c9fc72ebaa 100644 --- a/tools/python/xen/xend/server/DevController.py +++ b/tools/python/xen/xend/server/DevController.py @@ -189,8 +189,17 @@ class DevController: """ import xen.xend.XendDomain - backdom = xen.xend.XendDomain.instance().domain_lookup_by_name( - sxp.child_value(config, 'backend', '0')) + xd = xen.xend.XendDomain.instance() + + backdom_name = sxp.child_value(config, 'backend') + if backdom_name: + backdom = xd.domain_lookup_by_name(backdom_name) + else: + backdom = xd.privilegedDomain() + + if not backdom: + raise VmError("Cannot configure device for unknown backend %s" % + backdom_name) frontpath = self.frontendPath(devid) backpath = self.backendPath(backdom, devid) -- 2.30.2